package com.ruoyi.procured.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;

/**
 * 审核流程表
 */
@Data
@TableName(value="tb_procured_plan_process")
public class ProcuredPlanProcess
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @TableId(value = "process_id")
    private String processId;

    /** 审核流程状态（0审核中，1同意，2拒绝）*/
    @TableField("process_status")
    private String processStatus;

    /** 审核时间 */
    @TableField("process_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date processTime;

    /** 审核流程备注 */
    @TableField("process_remark")
    private String processRemark;

    /** 采购订单主键ID */
    @TableField("procured_plan_id")
    private String procuredPlanId;

    /** 审核人ID */
    @TableField("reviewer_id")
    private Long reviewerId;

    /** 审核人部门ID */
    @TableField("reviewer_dept_id")
    private Long reviewerDeptId;

    /** 审核人角色ID */
    @TableField("reviewer_role_id")
    private Long reviewerRoleId;

    /** 审核人顺序 */
    @TableField("reviewer_order")
    private Integer reviewerOrder;

    // **添加无参构造函数**
    public ProcuredPlanProcess() {
    }

    public ProcuredPlanProcess(String processId, String processStatus, Date processTime, String procuredPlanId,
                                 Long reviewerId, Long reviewerDeptId, Long reviewerRoleId, Integer reviewerOrder) {
        this.processId = processId;
        this.processStatus = processStatus;
        this.processTime = processTime;
        this.procuredPlanId = procuredPlanId;
        this.reviewerId = reviewerId;
        this.reviewerDeptId = reviewerDeptId;
        this.reviewerRoleId = reviewerRoleId;
        this.reviewerOrder = reviewerOrder;
    }
}
